Linear Software Models: An Algebraic Theory of Software Composition

نویسنده

  • Iaakov Exman
چکیده

The central goal of our software theory is to solve the composition problem of a software system of any size from sub-systems down to indivisible components either produced in house, or purchased from other manufacturers. The theory guides the gradual or agile design of the system by means of quantitative criteria for the current design quality, and by highlighting problematic coupling spots to be resolved in order to improve the software design. The theory is based upon solid results of linear algebra, and the broadly accepted wisdom that modularity is essential for understandable and maintainable software design. The main algebraic structure of the theory is the Modularity Matrix. It links structors – a generalization of classes – in the matrix columns, to their provided functionals – a generalization of methods – in the matrix rows. The theory predicts that neat modules for any given system are the blocks of a block-diagonal standard matrix. The matrix itself is the source of quantitative criteria for design quality. Module sizes are determined by the matrix eigenvectors. The theory formalizes intuitive concepts widely used in software engineering, providing precise definitions for coupling, cohesion, modules, single responsibility and canonical systems such as design patterns. This talk also touches recent research results showing that apparently different alternative theories, such as the Modularity Lattice from FCA (Formal Concept Analysis) and approaches using the Laplacian Matrix are equivalent to the Modularity Matrix. Therefore, Linear Software Models are proposed as a coherent unified algebraic theory of software composition.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Software for Prediction of Periodic Response of Non-linear Multi Degree of Freedom Rotors Based on Harmonic Balances

It is the purpose of this paper to introduce a computer software that is developed for the analysis of general multi degree of freedom rotor bearing systems with non-linear support elements. A numerical-analytical method for the prediction of steady state periodic response of large order nonlinear rotor dynamic systems is addressed which is based on the harmonic balance technique. By utilizing ...

متن کامل

Computation of a canonical form for linear differential-algebraic equations

This paper describes how a commonly used canonical form for linear differential-algebraic equations can be computed using numerical software from the linear algebra package LAPACK. This makes it possible to automate for example observer construction and parameter estimation in linear models generated by a modeling language like Modelica.

متن کامل

Embedding Algebraic Speci cations in HOL

To build correct software systems in a systematic way, we need to integrate analysis with synthesis and support composition. Integrating analysis and synthesis gives us conndence in the system implementation. Composition facilitates reuse and is a crucial element of component-based software engineering. Logic, algebraic speciication, and category theory provide a common ground for both synthesi...

متن کامل

Linear Software Models: Key Ideas

Linear Software Models is a systematic effort to formulate a theory of software systems neatly based upon standard mathematics, viz. linear algebra. It has appeared in a series of papers dealing with various aspects of the theory. But one was lacking a single source for its key ideas. This paper concisely distills foundational ideas and results obtained within Linear Software Models. First and ...

متن کامل

An Algebraic View on the Semantics of Model Composition

Due to the increased complexity of software development projects more and more systems are described by models. The sheer size makes it impractical to describe these systems by a single model. Instead many models are developed that provide several complementary views on the system to be developed. This however leads to a need for compositional models. This paper describes a foundational theory ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2016